#!bin/sh

# 目标名称
# target_name=FFTempLib
read -p "请输入要制作的lib库名称: " target_name
# #workspace  如果使用了cocoapods 要用 workspace_name
# workspace_name=FFTempLib.xcworkspace

#scheme
# scheme_name=FFTempLib

# 项目所在路径
project_dir=$(pwd)

# 构建模式 Release/Debug
mode=Release

build_dir=${project_dir}/build

#合并之后的目标路径
product_dir=${project_dir}/library

#真机生成的静态库的路径
iphoneos_dir=${build_dir}/${mode}-iphoneos
#真机生产的头文件的地址
iphoneos_header_dir=${iphoneos_dir}/include/${target_name}
#真机生成的静态库的地址
iphoneos_lib_dir=${iphoneos_dir}/lib${target_name}.a

#模拟器生成的静态库的路径
simulator_dir=${build_dir}/${mode}-iphonesimulator
#模拟器生成的头文件的地址
simulator_header_dir=${simulator_dir}/include/${target_name}
##模拟器生成的静态库的地址
simulator_lib_dir=${simulator_dir}/lib${target_name}.a

rm -rf "${build_dir}"

if [[ -d "${product_dir}" ]]; then
	rm -rf "${product_dir}"
fi

xcodebuild -target "${target_name}" -scheme "${target_name}" -configuration "${mode}" -sdk iphoneos15.2 clean build BUILD_DIR="${build_dir}" BUILD_ROOT="${build_dir}" VALID_ARCHS="arm64 armv7" 
xcodebuild -target "${target_name}" -scheme "${target_name}" -configuration "${mode}" -sdk iphonesimulator15.2 clean build BUILD_DIR="${build_dir}" BUILD_ROOT="${build_dir}" VALID_ARCHS="i386 x86_64" 

# 合并模拟器的架构和真机架构 
if [[ -f "${iphoneos_lib_dir}" ]] && [[ -f "${simulator_lib_dir}" ]] ; then
	
	# 如果不存在 就生成目录
	if [[ ! -d "${product_dir}" ]]; then
		mkdir -p "${product_dir}"
	fi

	lipo -create "${simulator_lib_dir}" "${iphoneos_lib_dir}" -output "${iphoneos_lib_dir}"

	# 将头文件copy到Header文件夹下
	cp -r "${iphoneos_header_dir}" "${iphoneos_dir}/Headers"

	# 移除默认头文件
	rm -rf "${iphoneos_dir}/include"

	# 将需要的文件copy
	cp -r "${iphoneos_dir}/" "${product_dir}"

	if [[ -d "${product_dir}" ]]; then
		# 打开目录
		open "${product_dir}"
	fi
else
	echo "有错误出现，没有生成真机或模拟器的静态库"
	exit 1
fi

if [[ -d "${product_dir}" ]]; then
open "${product_dir}"	
fi
